

#include "iostream"
#include "vector"
#include "unordered_map"
#include "unordered_set"
#include "algorithm"
#include "string"
#include "list"
#include "string.h"


class OneLoop {
public:
    std::vector<int> final;

    bool run(int a
    ) {

        int under0=0;
        for(int i=0;i<a;i++){
            int in;std::cin>>in;
            if(in<0){
                under0++;
            }
            final.push_back(in);
        }
        std::vector<int> b=final;
        b[0]= std::max(0,final[0]);
        int max=b[0];

        if(under0==a){
            max=final[0];
            for(int i=1;i<a;i++){
                max= std::max(max,final[i]);
            }
        }else{

            for(int i=1;i<a;i++){

                b[i]= std::max(b[i-1]+final[i],final[i]);
                max= std::max(max,b[i]);
            }
        }

        printf("%d\n",max);
        return true;
    }
};

class Solution {
public:
    void run() {

        bool first = true;
        int a, b, c, d, e;
        //        std::cin >> a;

        while (std::cin>>a) {
            OneLoop l;
            if (!l.run(a)) {
                //                return;
            }
        }


    }
};

int main() {
    //    bool cur_num= true;
    Solution().run();
    return 0;
}

